﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SmartCard.Framework
{
	public interface ISmartCardReaderManager
	{
		#region events

		/// <summary>
		/// Simply forward card inserted notifications
		/// </summary>
		event EventHandler<CardInsertedEventArgs> CardInserted;

		/// <summary>
		/// Simply forward card removed notifications
		/// </summary>
		event EventHandler<CardRemovedEventArgs> CardRemoved;

		/// <summary>
		/// Simple forward reader errors
		/// </summary>
		event EventHandler<ReaderErrorEventArgs> ReaderError;

		#endregion

		#region properties

		/// <summary>
		/// Get the set of smart card readers being managed
		/// </summary>
		IEnumerable<ISmartCardReader> ManagedSmartCardReaders
		{ get; }

		#endregion
	}
}